/*非连续递增(有重复的)*/
/*原数组：1,1,1,2,3,3,4,4,5，5*/

/*新数组：1，2，3，4，5*/
    #include <stdio.h>
    #include <string.h>
    #define BUFFER_SIZE 10

    /*数组去重*/
    int dedupArray(int *array, int size, int *newSize)
    {   
        
        int pos = 1; // 位置

        for (int idx = 1; idx < size; idx++)
        {

            if (array[idx] != array[idx - 1])
            {
                array[pos] = array[idx];
            
                pos++;   
            }
        }
        *newSize = pos;//解引用

        return 0;

    //   printf("pos:%d\n", pos);
    //   for (int idx = 0; idx < pos; idx++)
    //  {
    //       printf("array[%d] = %d\n", idx, array[idx]);
    //   }
    }

    int main()

    {
        int array[BUFFER_SIZE] = {1, 1, 1, 2, 3, 3, 4, 4, 5, 5};
        /*清楚脏数据*/
        //memset(array, 0, sizeof(array));

        //  int size = sizeof(array) / sizeof(array[0]);
        int newSize = 0;
        int len = sizeof(array) / sizeof(array[0]);



        dedupArray(array, len, &newSize);
        for(int idx = 0; idx < newSize; idx++)
        {
            printf("array[%d] = %d\n", idx, array[idx]);

        }
        

    }